﻿namespace SPBrowser
{
    /// <summary>
    /// Determines the type of data which is or needs to be loaded into the <see cref="TreeView"/>.
    /// </summary>
    public enum NodeLoadType
    {
        GeneralGroup,
        SiteFeatures,
        SiteFields,
        SiteContentTypes,
        SiteEventReceivers,
        SiteRecycleBin,
        SiteWebTemplates,
        SiteUserCustomActions,
        WebSubWebs,
        WebFields,
        WebContentTypes,
        WebLists,
        WebFeatures,
        WebUsers,
        WebAssociatedGroups,
        WebGroups,
        WebEventReceivers,
        WebProperties,
        WebRecycleBin,
        WebListTemplates,
        WebPushNotificationSubscribers,
        WebRoleAssignments,
        WebRoleDefinitions,
        WebWorkflowAssociations,
        WebWorkflowTemplates,
        WebWorkflowSubscriptions,
        WebWorkflowDefinitions,
        WebTemplates,
        WebUserCustomActions,
        WebAppInstances,
        WebWorkflowInstances,
        Folder,
        FolderProperties,
        GroupUsers,
        ListWorkflowAssociations,
        ListWorkflowSubscriptions,
        ListContentTypes,
        ListFields,
        ListItems,
        ListViews,
        ListEventReceivers,
        ListRoleAssignments,
        ListUserCustomActions,
        TermStores,
        TermGroups,
        TermSets,
        Terms,
        TermChilds,
        UserProfiles,
        UserProfileProperties,
        UserProfilePeers,
        UserProfileDirectReports,
        UserProfileExtendedManagers,
        UserProfileExtendedReports,
        UserProfileOtherUsers,
        UserProfileCurrentUser,
        UserProfileFollowers,
        UserProfileFollowedTags,
        UserProfileTrendingTags,
        UserProfileSuggestions,
        UserProfilePeopleFollowedByUser,
        GroupsForUser,
        WebParts,
        WebPartProperties,
        FileVersions,
        ItemAttachmentFiles,
        ItemFieldValues,
        ItemFieldValuesAsHtml,
        ItemFieldValuesAsText,
        ItemFieldValuesForEdit,
        ItemRoleAssignments,
        ItemWorkflowInstances,
        Site,
        Sites,
        TenantWebTemplates,
        SiteProperties,
        DeletedSiteProperties,
        ExternalUsers,
        Apps,
        AppErrors,
        LogEntries,
        ProjectPolicies,
        ProjectPolicy,
        AppTiles,
        NavigationNodes,
        NavigationTopNavigationBar,
        NavigationQuickLaunch,
        ContentTypeFields,
        FieldLinks,
        ContentTypeWorkflowAssociations,
        WebAlerts,
        UserAlerts,
        ItemProperties,
        FileProperties,
        FileVersionEvents,
        TimeZones,
        SiteCollectionAdmins
    }
}
